#include "udpserver.hpp"
#include "dict.hpp"
#include "inetaddr.hpp"

int main(int argc, char *argv[])
{
    if (argc != 2)
    {
        std::cout << argv[0] << " port" << std::endl;
        return -1;
    }
    uint16_t port = std::stoi(argv[1]);
    // 1. 加载翻译字典
    Dict d;
    d.Load();
    UdpServer usvr(port, [&d](std::string word) -> std::string
                   { return d.Translate(word); });
    usvr.Init();
    usvr.Start();
    return 0;
}

// int main(int argc, char *argv[])
// {
//     if (argc != 2)
//     {
//         std::cout << argv[0] << " port" << std::endl;
//         return -1;
//     }
//     uint16_t port = std::stoi(argv[1]);
//     UdpServer usvr(port);
//     usvr.Init();
//     usvr.Start();

//     // if (argc != 3)
//     // {
//     //     std::cout << argv[0] << " ip  port" << std::endl;
//     //     return -1;
//     // }
//     // std::string ip = argv[1];
//     // uint16_t port = std::stoi(argv[2]);
//     // UdpServer usvr(ip, port);
//     // usvr.Init();
//     // usvr.Start();
//     return 0;
// }